<%@ page import="org.springframework.web.context.request.SessionScope" %>
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ taglib prefix="form" uri="http://www.springframework.org/tags/form" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>
<%@ taglib prefix="fn" uri="http://java.sun.com/jsp/jstl/functions" %>
<%request.setAttribute("ctx", request.getContextPath());%>
<html>
<head>
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link rel="stylesheet" href="${pageContext.request.contextPath}/layui-v2.9.14/css/layui.css">
    <script src="${pageContext.request.contextPath}/layui-v2.9.14/jquery-2.1.0.min.js"></script>
    <script src="${pageContext.request.contextPath}/layui-v2.9.14/layui.js"></script>
    <script src="${pageContext.request.contextPath}/layui-v2.9.14/layui_ext/xmSelect/xm-select.js"></script>
    <script src="${pageContext.request.contextPath}/layui-v2.9.14/crypto-js.js"></script>
    <title>用户列表</title>
</head>
<body>
<a href="/user/toadd.do">【添加人员】</a>
<form class="layui-form" action="">
    <div class="layui-form-item">
        <input name="id" hidden id="roleId">
        <label class="layui-form-label">角色名称</label>
        <div class="layui-input-block">
            <input type="text" name="roleName" id="roleName" lay-verify="required" placeholder="请输入" autocomplete="off" class="layui-input">
        </div>
    </div>
    <div id="ID-tree-demo-showCheckbox"></div>
    <div class="layui-form-item">
        <div class="layui-input-block">
            <button type="submit" class="layui-btn" lay-submit lay-filter="demo1">立即提交</button>
            <button type="reset" class="layui-btn layui-btn-primary">重置</button>
        </div>
    </div>
</form>
<script>
    layui.use(['form', 'laydate', 'util'], function(){
        var form = layui.form;
        var layer = layui.layer;
        var laydate = layui.laydate;
        var util = layui.util;
        var tree = layui.tree;

        // 模拟数据
        var data = JSON.parse('${tbMenuList}')

        // 渲染

            tree.render({
                elem: '#ID-tree-demo-showCheckbox',
                data: data,
                showCheckbox: true,
                id: 'test', // 自定义 id 索引
                edit: ['add', 'update', 'del'], // 开启节点的右侧操作图标
                customName: { // 自定义 data 字段名 --- 2.8.14+
                    id: 'menuId',
                    title: 'name',
                    children: 'children'
                },
            });
            // 其他属性 …


        $("#roleName").on('blur',function () {
            let roleName = $("#roleName").val();

            $.post("/role/checkroleName.do",{roleName:roleName},function (res) {
                if(res.code===0){
                    layer.msg(res.msg,{time:1000},function () {
                        $("#roleId").val(res.data.roleId);
                        // 设置对应 id 的节点选中
                        tree.setChecked('test',res.data.menuids); // 批量勾选 id 为 1,3 的节点
                    })
                }else{
                    layer.msg(res.msg,{time:1000},function () {
                        // 重载
                        tree.reload('test', { // options
                            data: JSON.parse('${tbMenuList}')
                        });
                    })
                }
            })
        })





        // 提交事件
        form.on('submit(demo1)', function(data){
            var field = data.field; // 获取表单字段值
            var checkData = tree.getChecked('test');
           let ids='';
            for (let i = 0; i < checkData.length; i++) {
                ids+=","+checkData[i].menuId
                let childrendata=checkData[i].children;
                for (let j = 0; j < childrendata.length; j++) {
                    ids+=","+childrendata[j].menuId
                }
            }
           ids= ids.substring(1)
            field.ids=ids;
            console.log(ids)
            $.post("/role/add.do",field,function (res) {
                if(res.code===0){
                    layer.msg(res.msg,{time:1000},function () {
                        location.href='/role/tolist.do'
                    })
                }else{
                    layer.msg(res.msg,{time:1000})
                }
            })

            return false; // 阻止默认 form 跳转
        });

        // 日期
        laydate.render({
            elem: '#date'
        });

    });
</script>
</body>
</html>